IIS includes many property settings that make it easy for you to fine-tune site performance. This topic describes properties associated with network capacity and how to adjust them. It also makes hardware recommendations based on the volume of traffic or types of sites you plan to host.
This topic includes:
By throttling the connection bandwidth used by IIS, you can maintain available bandwidth for other applications, such as e-mail or news servers. If you are running more than one Web site on IIS, you can also throttle bandwidth on each of the Web sites individually. Throttling bandwidth on individual sites assures that bandwidth is available for all the sites sharing the network card. Bandwidth throttling limits only the bandwidth used by static HTML files. Also, bandwidth limits set on individual Web sites overwrite the limits set on the computer level. For information about how to throttle out-of-process applications, see Throttling Processes.
To determine whether you should throttle the bandwidth of IIS, or of an individual site, use the tools described in About Performance Tuning. Keep in mind that while the total number of connection attempts in a day may give you an idea of the overall activity on your site, you also need to consider changes in the connection rate (connections per second) to see if you are having congestion problems at peak times. If you are regularly using more than 50 percent of your total connection bandwidth, you may need to consider upgrading your connection. For more information on connection types, see Choosing the Right Connection.
If you are just setting up your Web site and have no available data to analyze, but do plan to run multiple services such as a Web server, mail server, and news server, you may want to start by restricting your Web server to 50 percent of the available bandwidth. Once you have been in operation for a short time, you can analyze site performance and adjust bandwidth accordingly. To throttle bandwidth, see Throttling Bandwidth.
If you limit the number of simultaneous connections to a Web site, you can conserve resources for other services using the same connection, or other applications using the same computer. When limiting connections to an individual Web site, remember that most browsers typically make up to four simultaneous connections to download text and graphics from a page. All connection attempts beyond the connection limit are rejected. For instructions on how to limit connections, see Limiting Connections and Setting Connection Timeout.
In addition to the hardware inside your computer, the type of network connection you have can directly affect server performance. If your network connection cannot handle the amount of data being sent across it, then the performance of your server is reduced. The bandwidth available to IIS is also affected by other applications running on the computer that require network bandwidth, such as e-mail.
On a moderately busy site, IIS can completely saturate a 10-Mbps Ethernet card. To prevent the server from being restricted by limited network capacity, use either multiple 10-Mbps Ethernet cards, or install a 100-Mbps Ethernet or FDDI network card. To check for network saturation, check for CPU % Utilization on both the client and the server. If neither the client or the server is restricted by the CPU capacity, then something else is the problem. Use Network Monitor, included with Windows 2000, to check the Network Utilization. If the network is close to 100 percent utilized, for either the client or the server, then most likely the network is the bottleneck. For more information on accessing Network Monitor, see the Windows 2000 documentation.
Different brands of network cards perform differently. The performance of network cards is also affected by the drivers and driver settings used when configuring the network card. Check with the maker of your network card to see if updated drivers are available. For information on the symptoms of network saturation, see Throttling Bandwidth.
Your Internet bandwidth determines how fast data arrives at your computer and also how many requests can be serviced simultaneously. If you do not have sufficient bandwidth for the number of requests coming to your site, delays or failures can occur. The amount of bandwidth you have is a function of the type of connection you select. This section discusses the various connection types and their corresponding capacities. To figure the amount of bandwidth you need for your site, see Choosing the Right Connection.
Your computer connects to the Internet through a network adapter card or other network device, such as a modem or ISDN card. The rate at which your connection transfers data is measured in bits per second (bps). The following table lists types of connections and the capacity of each. The connection types described represent typical levels of service for full Internet connections in North America and Japan. The Internet services offered through ISPs in your country/region might differ significantly.
Connection Type | Maximum Bandwidth |
---|---|
Dedicated PPP/SLIP | Modem speed |
56K (Frame Relay) | 56,000 bps |
ISDN (using PPP) | 56,000–64,000 bps |
T1 | 1,540,000 bps |
Fractional T1 | Varies as needed |
T3 | 45,000,000 bps |
ATM | 155,000,000 bps |
In addition to the number of simultaneous users you anticipate supporting, you should also consider the speed at which your files are sent to users. How fast your files are sent is a function of connection speed and file size. A general guideline is that it should take less than five seconds to send a page. This does not include external graphics, audio, or video. External files typically load after the text loads. A general rule for external files is that they should load in less than 30 seconds.
Once you have determined the amount of bandwidth needed for your Web or FTP server, consider whether you will be offering other services that require bandwidth. These services can include electronic mail (e-mail), news, or audio or video streaming. Be sure to include enough bandwidth for these services.
Typically, your Internet connection comes to a router, and a network adapter card connects your computer to the router. You need a high-performance network card to prevent a bottleneck between your Internet connection and your computer. For example, if your connection to the Internet is a T1 line with a 1.54-Mbps bandwidth, then having your servers on an Ethernet LAN with a 10-Mbps bandwidth should be sufficient. However, if you have a T3 connection to the Internet, you should consider putting in a Fiber Distributed Data Interface (FDDI) LAN for your servers because the T3 bandwidth of 45-Mbps is much greater than the Ethernet bandwidth of 10 Mbps.
HTTP compression provides faster transmission time between compression-enabled browsers and IIS. You can either compress static files alone, or both static files and applications. If your network bandwidth is restricted, you should consider HTTP compression, at least for static files, unless your processor utilization is already extremely high.
When IIS receives a request, it checks to see if the browser is compression-enabled. IIS then checks the file name extension to see if the requested file is a static file or contains dynamic content. If the file contains static content, IIS checks to see if the file has previously been requested and is already stored in a compressed format in the temporary compression directory. If the file is not stored in a compressed format, IIS sends the uncompressed file to the browser, and adds a compressed copy of the file to the temporary compression directory. If the file is stored in a compressed format, IIS sends the compressed file to the browser. No files are compressed until they have been requested once by a browser.
If the file contains dynamic content, IIS compresses the file as it is generated and sends the compressed file to the browser. No copy of the file is stored.
The cost of compressing a static file is modest and is typically incurred only once, because the file is then stored in the temporary compression directory. The cost of compressing dynamically generated files is somewhat higher, because they are not stored and must be regenerated with each request. The cost of expanding the file at the browser is minimal. Compressed files download faster, so are particularly beneficial to the performance of any browser that uses a network connection with restricted bandwidth (a modem, for example).
By default, compressed files are given an expiration date of January 1, 1997, to prevent proxy servers from serving cached copies of compressed files to browsers that are not compression-enabled. This also means that browsers will not display a cached copy of the file on the next user request, but will return to the server for a fresh copy. For instructions on how to set HTTP compression, see Enabling HTTP Compression.